package com.example.eeuse.model;

import lombok.Data;
import org.dromara.easyes.annotation.IndexId;
import org.dromara.easyes.annotation.IndexName;
import org.dromara.easyes.annotation.rely.IdType;

/**
 * ES数据模型
 * <p>
 * Copyright © 2021 xpc1024 All Rights Reserved
 **/
@Data
@IndexName("document")
public class Document {
    /**
     * 推荐方式1: es中的唯一id,不加任何注解或@IndexId(type=IdType.NONE) 此时id值将由es自动生成
     */
//    private String id;
    /**
     * 不推荐方式2:如果你想自定义es中的id为你提供的id,比如MySQL中的id,请将注解中的type指定为customize或直接在全局配置文件中指定,此时你便可以在插入数据时赋值给id
     */
//    @IndexId(type = IdType.CUSTOMIZE)
//    private Long id;
    /**
     * 推荐方式3:如果你确实有需求用到其它数据库中的id,不妨在加了推荐方式1中的id后,再加一个字段类型为keyword的列,用来存储其它数据库中的id
     */
//    @IndexField(fieldType = FieldType.KEYWORD)
//    private Long mysqlId;
    /**
     * es中的唯一id
     */
    @IndexId(type= IdType.CUSTOMIZE)
    private String id;

    /**
     * 文档标题
     * 字段名称以及下划线转自动驼峰
     * String类型默认会被EE创建为keyword类型,keyword类型支持精确查询
     */
    private String title;
    /**
     * 文档内容
     */
    private String content;
}
